#ifndef __EEDIT_MEM_F__
#define __EEDIT_MEM_F__

#include "mem_structures.h"
#include "mem_macros.h"

/*
 * Return a new buffer
 */
buffer_t* mem_newBuffer();

/*
 * Delete a buffer and all of its contents
 */
void mem_delBuffer(buffer_t*);

/*
 * Add a character to a buffer not a newline 
 */
void mem_addChar(buffer_t*, CHARACTER, POSITION);

/*
 * add a newline
 */
void mem_add_newline(buffer_t*, CHARACTER, POSITION);

/*
 * Remove a character 
 */
void delChar(buffer_t*, POSITION);

/*
 * Add a string to the buffer, starting from POSITION
 */
void addBufferStr(buffer_t*, CHARACTER*, POSITION);

#endif
